Generally, a compiler is computer software that transforms computer code written in a first programming language into a second programming language. The first programming language is usually referred to as the source language and the second programming language is usually referred to as the target language. Typically, a compiler is used to translate a source code from a high-level programming language to a lower level language, such as assembly language, object code, or machine code, to create an executable program. For instance, source code may be converted into a program that may be executed on a computer by a compiler.